<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>LiquidFun: b2Sweep Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">LiquidFun
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structb2_sweep-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">b2Sweep Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="b2_math_8h_source.html">b2Math.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a81947646092468290d15005928e12fcd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#a81947646092468290d15005928e12fcd">GetTransform</a> (<a class="el" href="structb2_transform.html">b2Transform</a> *xfb, float32 beta) const </td></tr>
<tr class="separator:a81947646092468290d15005928e12fcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35eb9b976ca87c9b8d758bec070c6c06"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#a35eb9b976ca87c9b8d758bec070c6c06">Advance</a> (float32 alpha)</td></tr>
<tr class="separator:a35eb9b976ca87c9b8d758bec070c6c06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad66a3086bc7656df9cf7454013a2f61b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#ad66a3086bc7656df9cf7454013a2f61b">Normalize</a> ()</td></tr>
<tr class="memdesc:ad66a3086bc7656df9cf7454013a2f61b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalize the angles.  <a href="#ad66a3086bc7656df9cf7454013a2f61b">More...</a><br/></td></tr>
<tr class="separator:ad66a3086bc7656df9cf7454013a2f61b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a4bcc302cf78771896d6256fc53f2f8be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bcc302cf78771896d6256fc53f2f8be"></a>
<a class="el" href="structb2_vec2.html">b2Vec2</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#a4bcc302cf78771896d6256fc53f2f8be">localCenter</a></td></tr>
<tr class="memdesc:a4bcc302cf78771896d6256fc53f2f8be"><td class="mdescLeft">&#160;</td><td class="mdescRight">local center of mass position <br/></td></tr>
<tr class="separator:a4bcc302cf78771896d6256fc53f2f8be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16dacd7188f3c7b2adef3242012587d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16dacd7188f3c7b2adef3242012587d8"></a>
<a class="el" href="structb2_vec2.html">b2Vec2</a>&#160;</td><td class="memItemRight" valign="bottom"><b>c0</b></td></tr>
<tr class="separator:a16dacd7188f3c7b2adef3242012587d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b5402e01b92cc82473389fc6f0375c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b5402e01b92cc82473389fc6f0375c3"></a>
<a class="el" href="structb2_vec2.html">b2Vec2</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#a1b5402e01b92cc82473389fc6f0375c3">c</a></td></tr>
<tr class="memdesc:a1b5402e01b92cc82473389fc6f0375c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">center world positions <br/></td></tr>
<tr class="separator:a1b5402e01b92cc82473389fc6f0375c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf89c7d1223f8ab27501ff033aeac92b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf89c7d1223f8ab27501ff033aeac92b"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><b>a0</b></td></tr>
<tr class="separator:acf89c7d1223f8ab27501ff033aeac92b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa96bacc91dd3c92ae716a45512332d6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa96bacc91dd3c92ae716a45512332d6"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#afa96bacc91dd3c92ae716a45512332d6">a</a></td></tr>
<tr class="memdesc:afa96bacc91dd3c92ae716a45512332d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">world angles <br/></td></tr>
<tr class="separator:afa96bacc91dd3c92ae716a45512332d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5f8ab90178b58bc0777096cbc6b91cf"><td class="memItemLeft" align="right" valign="top">float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb2_sweep.html#aa5f8ab90178b58bc0777096cbc6b91cf">alpha0</a></td></tr>
<tr class="separator:aa5f8ab90178b58bc0777096cbc6b91cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This describes the motion of a body/shape for TOI computation. Shapes are defined with respect to the body origin, which may no coincide with the center of mass. However, to support dynamics we must interpolate the center of mass position. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a35eb9b976ca87c9b8d758bec070c6c06"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Sweep::Advance </td>
          <td>(</td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>alpha</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Advance the sweep forward, yielding a new initial state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">alpha</td><td>the new initial time. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a81947646092468290d15005928e12fcd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Sweep::GetTransform </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structb2_transform.html">b2Transform</a> *&#160;</td>
          <td class="paramname"><em>xfb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>beta</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the interpolated transform at a specific time. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">beta</td><td>is a factor in [0,1], where 0 indicates alpha0. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ad66a3086bc7656df9cf7454013a2f61b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Sweep::Normalize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Normalize the angles. </p>
<p>Normalize an angle in radians to be between -pi and pi. </p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="aa5f8ab90178b58bc0777096cbc6b91cf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float32 b2Sweep::alpha0</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Fraction of the current time step in the range [0,1] c0 and a0 are the positions at alpha0. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="b2_math_8h_source.html">b2Math.h</a></li>
</ul>
</div><!-- contents -->
<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-46159502-1', 'auto');
ga('create', 'UA-49880327-7', 'auto', {'name': 'liquidFunTracker'});
ga('send', 'pageview');
ga('liquidFunTracker.send', 'pageview');
</script>
</body>
</html>
